package com.sophossystems.client.asmon.dto;


import java.io.Serializable;

import java.util.Date;

public class ClientePersonasFisicasDTO implements Serializable
{
	/**
	 * 
	 */
	private static final long serialVersionUID = 2332684801765154489L;

	/** 
	 * This attribute maps to the column id_cliente in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected int idCliente;

	/** 
	 * This attribute maps to the column aPaterno in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String aPaterno;

	/** 
	 * This attribute maps to the column aMaterno in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String aMaterno;

	/** 
	 * This attribute maps to the column nombres in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String nombres;

	/** 
	 * This attribute maps to the column sexo in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String sexo;

	/** 
	 * This attribute maps to the column fNacimiento in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected Date fNacimiento;

	/** 
	 * This attribute maps to the column fInicioActividad in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected Date fInicioActividad;




	/** 
	 * This attribute maps to the column curp in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String curp;

	/** 
	 * This attribute maps to the column email in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String email;

	/** 
	 * This attribute maps to the column tel1 in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String tel1;

	/** 
	 * This attribute maps to the column ext1 in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String ext1;

	/** 
	 * This attribute maps to the column tel2 in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String tel2;

	/** 
	 * This attribute maps to the column ext2 in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String ext2;

	/** 
	 * This attribute maps to the column tipoRegimen in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String tipoRegimen;

	/** 
	 * This attribute maps to the column tipoActividad in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String tipoActividad;

	/** 
	 * This attribute maps to the column antecedentes in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String antecedentes;

	/** 
	 * This attribute maps to the column recomienda in the CLIENTE_PERSONAS_FISICAS table.
	 */
	protected String recomienda;

	
	protected ClienteDTO clientedto;
	
	protected int idClienteGeneral;
	
	/**
	 * @return the idClienteGeneral
	 */
	public int getIdClienteGeneral() {
		return idClienteGeneral;
	}

	/**
	 * @param idClienteGeneral the idClienteGeneral to set
	 */
	public void setIdClienteGeneral(int idClienteGeneral) {
		this.idClienteGeneral = idClienteGeneral;
	}

	/**
	 * @return the idCliente
	 */
	public int getIdCliente() {
		return idCliente;
	}

	/**
	 * @param idCliente the idCliente to set
	 */
	public void setIdCliente(int idCliente) {
		this.idCliente = idCliente;
	}

	/**
	 * @return the aPaterno
	 */
	public String getaPaterno() {
		return aPaterno;
	}

	/**
	 * @param aPaterno the aPaterno to set
	 */
	public void setaPaterno(String aPaterno) {
		this.aPaterno = aPaterno;
	}

	/**
	 * @return the aMaterno
	 */
	public String getaMaterno() {
		return aMaterno;
	}

	/**
	 * @param aMaterno the aMaterno to set
	 */
	public void setaMaterno(String aMaterno) {
		this.aMaterno = aMaterno;
	}

	/**
	 * @return the nombres
	 */
	public String getNombres() {
		return nombres;
	}

	/**
	 * @param nombres the nombres to set
	 */
	public void setNombres(String nombres) {
		this.nombres = nombres;
	}

	/**
	 * @return the sexo
	 */
	public String getSexo() {
		return sexo;
	}

	/**
	 * @param sexo the sexo to set
	 */
	public void setSexo(String sexo) {
		this.sexo = sexo;
	}

	/**
	 * @return the fNacimiento
	 */
	public Date getfNacimiento() {
		return fNacimiento;
	}

	/**
	 * @param fNacimiento the fNacimiento to set
	 */
	public void setfNacimiento(Date fNacimiento) {
		this.fNacimiento = fNacimiento;
	}

	/**
	 * @return the fInicioActividad
	 */
	public Date getfInicioActividad() {
		return fInicioActividad;
	}

	/**
	 * @param fInicioActividad the fInicioActividad to set
	 */
	public void setfInicioActividad(Date fInicioActividad) {
		this.fInicioActividad = fInicioActividad;
	}

	/**
	 * @return the curp
	 */
	public String getCurp() {
		return curp;
	}

	/**
	 * @param curp the curp to set
	 */
	public void setCurp(String curp) {
		this.curp = curp;
	}

	/**
	 * @return the email
	 */
	public String getEmail() {
		return email;
	}

	/**
	 * @param email the email to set
	 */
	public void setEmail(String email) {
		this.email = email;
	}

	/**
	 * @return the tel1
	 */
	public String getTel1() {
		return tel1;
	}

	/**
	 * @param tel1 the tel1 to set
	 */
	public void setTel1(String tel1) {
		this.tel1 = tel1;
	}

	/**
	 * @return the ext1
	 */
	public String getExt1() {
		return ext1;
	}

	/**
	 * @param ext1 the ext1 to set
	 */
	public void setExt1(String ext1) {
		this.ext1 = ext1;
	}

	/**
	 * @return the tel2
	 */
	public String getTel2() {
		return tel2;
	}

	/**
	 * @param tel2 the tel2 to set
	 */
	public void setTel2(String tel2) {
		this.tel2 = tel2;
	}

	/**
	 * @return the ext2
	 */
	public String getExt2() {
		return ext2;
	}

	/**
	 * @param ext2 the ext2 to set
	 */
	public void setExt2(String ext2) {
		this.ext2 = ext2;
	}

	/**
	 * @return the tipoRegimen
	 */
	public String getTipoRegimen() {
		return tipoRegimen;
	}

	/**
	 * @param tipoRegimen the tipoRegimen to set
	 */
	public void setTipoRegimen(String tipoRegimen) {
		this.tipoRegimen = tipoRegimen;
	}

	/**
	 * @return the tipoActividad
	 */
	public String getTipoActividad() {
		return tipoActividad;
	}

	/**
	 * @param tipoActividad the tipoActividad to set
	 */
	public void setTipoActividad(String tipoActividad) {
		this.tipoActividad = tipoActividad;
	}

	/**
	 * @return the antecedentes
	 */
	public String getAntecedentes() {
		return antecedentes;
	}

	/**
	 * @param antecedentes the antecedentes to set
	 */
	public void setAntecedentes(String antecedentes) {
		this.antecedentes = antecedentes;
	}

	/**
	 * @return the recomienda
	 */
	public String getRecomienda() {
		return recomienda;
	}

	/**
	 * @param recomienda the recomienda to set
	 */
	public void setRecomienda(String recomienda) {
		this.recomienda = recomienda;
	}

	/**
	 * @return the clientedto
	 */
	public ClienteDTO getClientedto() {
		return clientedto;
	}

	/**
	 * @param clientedto the clientedto to set
	 */
	public void setClientedto(ClienteDTO clientedto) {
		this.clientedto = clientedto;
	}

	/**
	 * Method 'equals'
	 * 
	 * @param _other
	 * @return boolean
	 */
	@Override
	public boolean equals(Object _other)
	{
		if (_other == null) {
			return false;
		}
		
		if (_other == this) {
			return true;
		}
		
		if (!(_other instanceof ClientePersonasFisicasDTO)) {
			return false;
		}
		
		final ClientePersonasFisicasDTO _cast = (ClientePersonasFisicasDTO) _other;
		if (idCliente != _cast.idCliente) {
			return false;
		}
		
		if (aPaterno == null ? _cast.aPaterno != aPaterno : !aPaterno.equals( _cast.aPaterno )) {
			return false;
		}
		
		if (aMaterno == null ? _cast.aMaterno != aMaterno : !aMaterno.equals( _cast.aMaterno )) {
			return false;
		}
		
		if (nombres == null ? _cast.nombres != nombres : !nombres.equals( _cast.nombres )) {
			return false;
		}
		
		if (sexo == null ? _cast.sexo != sexo : !sexo.equals( _cast.sexo )) {
			return false;
		}
		
		if (fNacimiento == null ? _cast.fNacimiento != fNacimiento : !fNacimiento.equals( _cast.fNacimiento )) {
			return false;
		}
		
		if (fInicioActividad == null ? _cast.fInicioActividad != fInicioActividad : !fInicioActividad.equals( _cast.fInicioActividad )) {
			return false;
		}
		
	
		
		if (curp == null ? _cast.curp != curp : !curp.equals( _cast.curp )) {
			return false;
		}
		
		if (email == null ? _cast.email != email : !email.equals( _cast.email )) {
			return false;
		}
		
		if (tel1 == null ? _cast.tel1 != tel1 : !tel1.equals( _cast.tel1 )) {
			return false;
		}
		
		if (ext1 == null ? _cast.ext1 != ext1 : !ext1.equals( _cast.ext1 )) {
			return false;
		}
		
		if (tel2 == null ? _cast.tel2 != tel2 : !tel2.equals( _cast.tel2 )) {
			return false;
		}
		
		if (ext2 == null ? _cast.ext2 != ext2 : !ext2.equals( _cast.ext2 )) {
			return false;
		}
		
		if (tipoRegimen == null ? _cast.tipoRegimen != tipoRegimen : !tipoRegimen.equals( _cast.tipoRegimen )) {
			return false;
		}
		
		if (tipoActividad == null ? _cast.tipoActividad != tipoActividad : !tipoActividad.equals( _cast.tipoActividad )) {
			return false;
		}
		
		if (antecedentes == null ? _cast.antecedentes != antecedentes : !antecedentes.equals( _cast.antecedentes )) {
			return false;
		}
		
		if (recomienda == null ? _cast.recomienda != recomienda : !recomienda.equals( _cast.recomienda )) {
			return false;
		}
		
		return true;
	}

	/**
	 * Method 'hashCode'
	 * 
	 * @return int
	 */
	@Override
	public int hashCode()
	{
		int _hashCode = 0;
		_hashCode = 29 * _hashCode + idCliente;
		if (aPaterno != null) {
			_hashCode = 29 * _hashCode + aPaterno.hashCode();
		}
		
		if (aMaterno != null) {
			_hashCode = 29 * _hashCode + aMaterno.hashCode();
		}
		
		if (nombres != null) {
			_hashCode = 29 * _hashCode + nombres.hashCode();
		}
		
		if (sexo != null) {
			_hashCode = 29 * _hashCode + sexo.hashCode();
		}
		
		if (fNacimiento != null) {
			_hashCode = 29 * _hashCode + fNacimiento.hashCode();
		}
		
		if (fInicioActividad != null) {
			_hashCode = 29 * _hashCode + fInicioActividad.hashCode();
		}
		
	
		
		if (curp != null) {
			_hashCode = 29 * _hashCode + curp.hashCode();
		}
		
		if (email != null) {
			_hashCode = 29 * _hashCode + email.hashCode();
		}
		
		if (tel1 != null) {
			_hashCode = 29 * _hashCode + tel1.hashCode();
		}
		
		if (ext1 != null) {
			_hashCode = 29 * _hashCode + ext1.hashCode();
		}
		
		if (tel2 != null) {
			_hashCode = 29 * _hashCode + tel2.hashCode();
		}
		
		if (ext2 != null) {
			_hashCode = 29 * _hashCode + ext2.hashCode();
		}
		
		if (tipoRegimen != null) {
			_hashCode = 29 * _hashCode + tipoRegimen.hashCode();
		}
		
		if (tipoActividad != null) {
			_hashCode = 29 * _hashCode + tipoActividad.hashCode();
		}
		
		if (antecedentes != null) {
			_hashCode = 29 * _hashCode + antecedentes.hashCode();
		}
		
		if (recomienda != null) {
			_hashCode = 29 * _hashCode + recomienda.hashCode();
		}
		
		return _hashCode;
	}

	/**
	 * Method 'createPk'
	 * 
	 * @return ClientePersonasFisicasPk
	 */
	public ClientePersonasFisicasPkDTO createPk()
	{
		return new ClientePersonasFisicasPkDTO(idCliente);
	}

	/**
	 * Method 'toString'
	 * 
	 * @return String
	 */
	@Override
	public String toString()
	{
		StringBuffer ret = new StringBuffer();
		ret.append( "com.sophossystems.client.asmon.dto.ClientePersonasFisicas: " );
		ret.append( "idCliente=" + idCliente );
		ret.append( ", aPaterno=" + aPaterno );
		ret.append( ", aMaterno=" + aMaterno );
		ret.append( ", nombres=" + nombres );
		ret.append( ", sexo=" + sexo );
		ret.append( ", fNacimiento=" + fNacimiento );
		ret.append( ", fInicioActividad=" + fInicioActividad );
		ret.append( ", curp=" + curp );
		ret.append( ", email=" + email );
		ret.append( ", tel1=" + tel1 );
		ret.append( ", ext1=" + ext1 );
		ret.append( ", tel2=" + tel2 );
		ret.append( ", ext2=" + ext2 );
		ret.append( ", tipoRegimen=" + tipoRegimen );
		ret.append( ", tipoActividad=" + tipoActividad );
		ret.append( ", antecedentes=" + antecedentes );
		ret.append( ", recomienda=" + recomienda );
		return ret.toString();
	}

}
